#!/bin/bash

function compare_file_date() {
    fileA=$1
    fileB=$2
    if [ ! -f $fileA ]; then
        return 1
    fi
    if [ ! -f $fileB ]; then
        return 1
    fi
    # 比较文件A和文件B的最后修改日期
    if [[ $(date -r $fileA +%s) -gt $(date -r $fileB +%s) ]]; then
        return 1
    else
        return 0
    fi
}


function create_cc() {
    compare_file_date $1.proto $2.pb.cc
    if [ $? -eq 1 ]; then
        echo -e "\033[33;1mproto $1 文件更新, 重新生成C++\033[0;0m"

        protoc --cpp_out=. $1.proto
        mv $2.pb.h ../include/phone_control_c
        # sed -i '1i\package com.pan;' src/main/java/com/pan/$2.java
    else
        printf '%-35s \033[32;1m%s\033[0;0m\n' $1.proto "不需要处理"
    fi
}

cd src/phone_control_c/src/
create_cc ros ros
create_cc device_auth device_auth
create_cc Odometry Odometry
create_cc LaserScan LaserScan